package edu.hwadee.BEIS.entity;
// default package

import java.sql.Timestamp;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.FetchType;
import javax.persistence.GeneratedValue;
import javax.persistence.Id;
import javax.persistence.JoinColumn;
import javax.persistence.ManyToOne;
import javax.persistence.Table;
import org.hibernate.annotations.GenericGenerator;

/**
 * PublicCourseTeacherSituation entity. @author MyEclipse Persistence Tools
 */
@Entity
@Table(name = "publiccourse_teacher_situation", catalog = "beis")

public class PublicCourseTeacherSituation implements java.io.Serializable {

	// Fields

	private Integer publicCourseTeacherSituationId;
	private SchoolBasicInfor schoolBasic;
	private Integer chineseTeacherCount;
	private Integer mathTeacherCount;
	private Integer englishTeacherCount;
	private Integer physicalTeacherCount;
	private Integer moralEducationalTeacherCount;
	private Integer mandarinTeacherCount;
	private Integer computerApplicationTeacherCount;
	private Integer seniorTeacherCount;
	private Integer schoolMajorLeaderCount;
	private Integer backboneTeacherCount;
	private Integer doubleTypeTeacherCount;
	private Integer aboveUndergraduateTeacherCount;
	private Integer graduateTeacherCount;
	private Integer belowProvinceTrainTeacherCount;
	private Integer aboveProvinceTrainTeacherCount;
	private Integer nationalTainTeacherCount;
	private Integer foreignTrainTeacherCount;
	private Short countyAuditStatus;
	private Short cityAuditStatus;
	private Timestamp modifyTime;

	// Constructors

	/** default constructor */
	public PublicCourseTeacherSituation() {
	}

	/** full constructor */
	public PublicCourseTeacherSituation(SchoolBasicInfor schoolBasic, Integer chineseTeacherCount,
			Integer mathTeacherCount, Integer englishTeacherCount, Integer physicalTeacherCount,
			Integer moralEducationalTeacherCount, Integer mandarinTeacherCount, Integer computerApplicationTeacherCount,
			Integer seniorTeacherCount, Integer schoolMajorLeaderCount, Integer backboneTeacherCount,
			Integer doubleTypeTeacherCount, Integer aboveUndergraduateTeacherCount, Integer graduateTeacherCount,
			Integer belowProvinceTrainTeacherCount, Integer aboveProvinceTrainTeacherCount,
			Integer nationalTainTeacherCount, Integer foreignTrainTeacherCount, Short countyAuditStatus,
			Short cityAuditStatus, Timestamp modifyTime) {
		this.schoolBasic = schoolBasic;
		this.chineseTeacherCount = chineseTeacherCount;
		this.mathTeacherCount = mathTeacherCount;
		this.englishTeacherCount = englishTeacherCount;
		this.physicalTeacherCount = physicalTeacherCount;
		this.moralEducationalTeacherCount = moralEducationalTeacherCount;
		this.mandarinTeacherCount = mandarinTeacherCount;
		this.computerApplicationTeacherCount = computerApplicationTeacherCount;
		this.seniorTeacherCount = seniorTeacherCount;
		this.schoolMajorLeaderCount = schoolMajorLeaderCount;
		this.backboneTeacherCount = backboneTeacherCount;
		this.doubleTypeTeacherCount = doubleTypeTeacherCount;
		this.aboveUndergraduateTeacherCount = aboveUndergraduateTeacherCount;
		this.graduateTeacherCount = graduateTeacherCount;
		this.belowProvinceTrainTeacherCount = belowProvinceTrainTeacherCount;
		this.aboveProvinceTrainTeacherCount = aboveProvinceTrainTeacherCount;
		this.nationalTainTeacherCount = nationalTainTeacherCount;
		this.foreignTrainTeacherCount = foreignTrainTeacherCount;
		this.countyAuditStatus = countyAuditStatus;
		this.cityAuditStatus = cityAuditStatus;
		this.modifyTime = modifyTime;
	}

	// Property accessors
	@GenericGenerator(name = "generator", strategy = "increment")
	@Id
	@GeneratedValue(generator = "generator")

	@Column(name = "publicCourse_teacher_situation_id", unique = true, nullable = false)

	public Integer getPublicCourseTeacherSituationId() {
		return this.publicCourseTeacherSituationId;
	}

	public void setPublicCourseTeacherSituationId(Integer publicCourseTeacherSituationId) {
		this.publicCourseTeacherSituationId = publicCourseTeacherSituationId;
	}

	@ManyToOne(fetch = FetchType.LAZY)
	@JoinColumn(name = "school_id", nullable = false)

	public SchoolBasicInfor getSchoolBasic() {
		return this.schoolBasic;
	}

	public void setSchoolBasic(SchoolBasicInfor schoolBasic) {
		this.schoolBasic = schoolBasic;
	}

	@Column(name = "chinese_teacher_count", nullable = false)

	public Integer getChineseTeacherCount() {
		return this.chineseTeacherCount;
	}

	public void setChineseTeacherCount(Integer chineseTeacherCount) {
		this.chineseTeacherCount = chineseTeacherCount;
	}

	@Column(name = "math_teacher_count", nullable = false)

	public Integer getMathTeacherCount() {
		return this.mathTeacherCount;
	}

	public void setMathTeacherCount(Integer mathTeacherCount) {
		this.mathTeacherCount = mathTeacherCount;
	}

	@Column(name = "english_teacher_count", nullable = false)

	public Integer getEnglishTeacherCount() {
		return this.englishTeacherCount;
	}

	public void setEnglishTeacherCount(Integer englishTeacherCount) {
		this.englishTeacherCount = englishTeacherCount;
	}

	@Column(name = "physical_teacher_count", nullable = false)

	public Integer getPhysicalTeacherCount() {
		return this.physicalTeacherCount;
	}

	public void setPhysicalTeacherCount(Integer physicalTeacherCount) {
		this.physicalTeacherCount = physicalTeacherCount;
	}

	@Column(name = "moral_educational_teacher_count", nullable = false)

	public Integer getMoralEducationalTeacherCount() {
		return this.moralEducationalTeacherCount;
	}

	public void setMoralEducationalTeacherCount(Integer moralEducationalTeacherCount) {
		this.moralEducationalTeacherCount = moralEducationalTeacherCount;
	}

	@Column(name = "mandarin_teacher_count", nullable = false)

	public Integer getMandarinTeacherCount() {
		return this.mandarinTeacherCount;
	}

	public void setMandarinTeacherCount(Integer mandarinTeacherCount) {
		this.mandarinTeacherCount = mandarinTeacherCount;
	}

	@Column(name = "computer_application_teacher_count", nullable = false)

	public Integer getComputerApplicationTeacherCount() {
		return this.computerApplicationTeacherCount;
	}

	public void setComputerApplicationTeacherCount(Integer computerApplicationTeacherCount) {
		this.computerApplicationTeacherCount = computerApplicationTeacherCount;
	}

	@Column(name = "senior_teacher_count", nullable = false)

	public Integer getSeniorTeacherCount() {
		return this.seniorTeacherCount;
	}

	public void setSeniorTeacherCount(Integer seniorTeacherCount) {
		this.seniorTeacherCount = seniorTeacherCount;
	}

	@Column(name = "school_major_leader_count", nullable = false)

	public Integer getSchoolMajorLeaderCount() {
		return this.schoolMajorLeaderCount;
	}

	public void setSchoolMajorLeaderCount(Integer schoolMajorLeaderCount) {
		this.schoolMajorLeaderCount = schoolMajorLeaderCount;
	}

	@Column(name = "backbone_teacher_count", nullable = false)

	public Integer getBackboneTeacherCount() {
		return this.backboneTeacherCount;
	}

	public void setBackboneTeacherCount(Integer backboneTeacherCount) {
		this.backboneTeacherCount = backboneTeacherCount;
	}

	@Column(name = "doubleType_teacher_count", nullable = false)

	public Integer getDoubleTypeTeacherCount() {
		return this.doubleTypeTeacherCount;
	}

	public void setDoubleTypeTeacherCount(Integer doubleTypeTeacherCount) {
		this.doubleTypeTeacherCount = doubleTypeTeacherCount;
	}

	@Column(name = "above_undergraduate_teacher_count", nullable = false)

	public Integer getAboveUndergraduateTeacherCount() {
		return this.aboveUndergraduateTeacherCount;
	}

	public void setAboveUndergraduateTeacherCount(Integer aboveUndergraduateTeacherCount) {
		this.aboveUndergraduateTeacherCount = aboveUndergraduateTeacherCount;
	}

	@Column(name = "graduate_teacher_count", nullable = false)

	public Integer getGraduateTeacherCount() {
		return this.graduateTeacherCount;
	}

	public void setGraduateTeacherCount(Integer graduateTeacherCount) {
		this.graduateTeacherCount = graduateTeacherCount;
	}

	@Column(name = "below_provinceTrain_teacher_count", nullable = false)

	public Integer getBelowProvinceTrainTeacherCount() {
		return this.belowProvinceTrainTeacherCount;
	}

	public void setBelowProvinceTrainTeacherCount(Integer belowProvinceTrainTeacherCount) {
		this.belowProvinceTrainTeacherCount = belowProvinceTrainTeacherCount;
	}

	@Column(name = "above_provinceTrain_teacher_count", nullable = false)

	public Integer getAboveProvinceTrainTeacherCount() {
		return this.aboveProvinceTrainTeacherCount;
	}

	public void setAboveProvinceTrainTeacherCount(Integer aboveProvinceTrainTeacherCount) {
		this.aboveProvinceTrainTeacherCount = aboveProvinceTrainTeacherCount;
	}

	@Column(name = "nationaltain_teacher_count", nullable = false)

	public Integer getNationalTainTeacherCount() {
		return this.nationalTainTeacherCount;
	}

	public void setNationalTainTeacherCount(Integer nationalTainTeacherCount) {
		this.nationalTainTeacherCount = nationalTainTeacherCount;
	}

	@Column(name = "foreigntrain_teacher_count", nullable = false)

	public Integer getForeignTrainTeacherCount() {
		return this.foreignTrainTeacherCount;
	}

	public void setForeignTrainTeacherCount(Integer foreignTrainTeacherCount) {
		this.foreignTrainTeacherCount = foreignTrainTeacherCount;
	}

	@Column(name = "county_auditstatus", nullable = false)

	public Short getCountyAuditStatus() {
		return this.countyAuditStatus;
	}

	public void setCountyAuditStatus(Short countyAuditStatus) {
		this.countyAuditStatus = countyAuditStatus;
	}

	@Column(name = "city_auditstatus", nullable = false)

	public Short getCityAuditStatus() {
		return this.cityAuditStatus;
	}

	public void setCityAuditStatus(Short cityAuditStatus) {
		this.cityAuditStatus = cityAuditStatus;
	}

	@Column(name = "modify_time", nullable = false, length = 19)

	public Timestamp getModifyTime() {
		return this.modifyTime;
	}

	public void setModifyTime(Timestamp modifyTime) {
		this.modifyTime = modifyTime;
	}

}